home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 16 / CU Amiga Magazine's Super CD-ROM 16 (1997-10-16)(EMAP Images)(GB)[!][issue 1997-11].iso / CUCD / Utilities / AddressAssist / Rexx / ARexxDemo.arx < prev    next >
Text File  |  1997-01-29  |  7KB  |  202 lines

  1. /* */
  2.  
  3. salute   =  0
  4. name      =  1
  5. name2     =  2
  6. address1 =  3
  7. address2 =  4
  8. place      =  5
  9. phone1   =  6
  10. phone2     =  7
  11. free1     =  8
  12. free2     =  9
  13. free3     = 10
  14. free4     = 11
  15. code     = 12
  16. remark1     = 13
  17. remark2  = 14
  18.  
  19. group1  = c2d(b2c('1'))
  20. group2  = c2d(b2c('10'))
  21. group3  = c2d(b2c('100'))
  22. group4  = c2d(b2c('1000'))
  23. group5  = c2d(b2c('10000'))
  24. group6  = c2d(b2c('100000'))
  25. group7  = c2d(b2c('1000000'))
  26. group8  = c2d(b2c('10000000'))
  27. group9  = c2d(b2c('100000000'))
  28. group10 = c2d(b2c('100000000')) * group2
  29.  
  30.  
  31. options results
  32. address 'ADDRESSASSIST.1'
  33.  
  34. dialogbox 'C="Continue"' '"Welcome to the ARexx demo and AddressAssist (AA) Tutorial!!!\n\nThis short tutorial should give you an overlook over AA s basics\nand serves as a guide for ARexx users."'
  35. dialogbox 'C="Yes, please|No"' '"Dialogboxes like this may be created using the DIALOGBOX command\nat every place in an ARexx script.\n\nWould you like to start the demo ???"'
  36.  
  37. if result = 1 then do
  38.     setview Listview
  39.  
  40.     dialogbox 'ControlString="OK"' 'First, lets clear the current database and\ncreate a new one with name *DemoDatabase*!'
  41.  
  42.     newdatabase "DemoDatabase"
  43.  
  44.     dialogbox 'ControlString="Yeh"' 'Now, add some records!'
  45.  
  46.     newrecord 'Schneider'
  47.     setrecorddata name2 'Alex H.' 
  48.     setrecorddata address1 'Kruggasse 179' 
  49.     setrecorddata address2 'Quarz Development' 
  50.     setrecorddata place 'CH-5462 Siglistorf'
  51.     setrecorddata phone1 '++41 56 243 18 33'
  52.     setrecorddata free1 'schneider@igt.baum.ethz.ch'
  53.     setrecorddata free2 '1'
  54.     setrecorddata remark1 'This guy is the maker of AddressAssist!!!'
  55.  
  56.     setrecordgroups G1 G9 G10 
  57.  
  58.     newrecord 'Schneider'
  59.     setrecorddata name2 'Ramona' 
  60.     setrecorddata address1 'Kruggasse 179' 
  61.     setrecorddata place 'CH-5462 Siglistorf'
  62.     setrecorddata phone1 '++41 56 243 18 33'
  63.     setrecorddata free2 '2'
  64.     setrecorddata remark1 'This is my daughter, she is seven years old!!!'
  65.  
  66.     setrecordgroups G1 G9
  67.  
  68.     newrecord 'Stuntz'
  69.     setrecorddata name2 'Stefan'
  70.     setrecorddata address1 'Eduard-Spranger-Straße 7'
  71.     setrecorddata place 'D-80935 München'
  72.     setrecorddata phone1 '++49 89 312-159-08'
  73.     setrecorddata free1 'stuntz@informatik.tu-muenchen.de'
  74.     setrecorddata free2 '1'
  75.     setrecorddata remark1 'Without this guy, AA s nice GUI would not have been possible as easy as it was: This is the creator of MUI: the *only* GUI creation library, which deserves this name!'
  76.  
  77.     setrecordgroups G1 G9 G10 
  78.  
  79.     newrecord 'Thomas'
  80.     setrecorddata name2 'Mark' 
  81.     setrecorddata address1 '1515 Royal Crest Dr. #3259'
  82.     setrecorddata place 'Austin, TX  78741'
  83.     setrecorddata free1 'mthomas@zilker.net'
  84.     setrecorddata free2 '3'
  85.     setrecorddata remark1 'Author of textfield.gadget'
  86.  
  87.     setrecordgroups G2 G9 G10 
  88.  
  89.     newrecord 'Potter'
  90.     setrecorddata name2 'Jonathan' 
  91.     setrecorddata address1 'GPSoftware'
  92.     setrecorddata place 'Brisbane, Australia'
  93.     setrecorddata free1 ''
  94.     setrecorddata free2 '4'
  95.     setrecorddata remark1 'This is the maker of the famous and excellent DOpus5!!'
  96.  
  97.     setrecordgroups G3 G9 G10 
  98.  
  99.     newrecord 'Schneider'
  100.     setrecorddata name2 'Yolanda' 
  101.     setrecorddata address1 'Kruggasse 179' 
  102.     setrecorddata place 'CH-5462 Siglistorf'
  103.     setrecorddata phone1 '++41 56 243 18 33'
  104.     setrecorddata free2 '2'
  105.     setrecorddata remark1 'This is my wife, the best in the world!'
  106.  
  107.     current 0
  108.     setview F
  109.  
  110.     dialogbox 'ControlString="I agree"' 'Oh, we have to rename the *FreeX* fields to *e-mail* and *ID-Number*!'
  111.     setfreename F1 'e-mail:'
  112.     setfreename F2 'ID-No.:'
  113.  
  114.     dialogbox 'ControlString="If you want"' 'And adjust the group names!??'
  115.  
  116.     setgroupname G1 'European'
  117.     setgroupname G2 'American'
  118.     setgroupname G3 'Australia'
  119.     setgroupname G8 'PC Developer'
  120.     setgroupname G9 'Amiga User'
  121.     setgroupname G10 'Amiga Developer'
  122.  
  123.     dialogbox 'ControlString="Yala guuut"' 'Now open the Remark1 window'
  124.  
  125.     remark1window Open
  126.  
  127.     dialogbox 'ControlString="Wow"' 'Ok, now select all Amiga developers and exclude all non-Europeans.'
  128.     setview Listview
  129.     selectgroup G10
  130.     selectgroup X G2 G3
  131.  
  132.     dialogbox 'ControlString="Why ???"' 'Export selected records as ASCII file\nusing *Prefs/Default.xpref* ....'
  133.     exportascii SelectedOnly 'P=Prefs/Default.xpref' 'RAM:testDatabase.txt'
  134.  
  135.     dialogbox 'ControlString="OK"' '... and import them again. \nMark imported records as *selected* and *Group5*.'
  136.     importascii Select G5 'P=Prefs/Default.xpref' 'RAM:testDatabase.txt'
  137.  
  138.     dialogbox 'ControlString="Really??"' 'Unselect all records and view only *Group5*.'
  139.     selectnone
  140.     setlistview G5
  141.  
  142.     dialogbox 'ControlString="Really??"' 'Select *Group5* records, remove the selected records\nand view all other records.'
  143.     selectgroup G5
  144.     removeselection
  145.     setlistview all
  146.  
  147.     dialogbox 'ControlString="Yep!|Noop!"' 'This was the first part.\n\nThere are more interesting items to see in the demo.\nWould you like to continue ?'
  148.     if result = 1 then do
  149.         dialogbox 'C="Yuhuh"' 'Ok, then let us select all people from *Siglistorf*\nand save them into a separate database called *The_Schneider_Family*.'
  150.         selectstring '*Siglistorf*'
  151.  
  152.         exportselection D '"The Schneider Family"'
  153.  
  154.         dialogbox 'C="Yuhuh"' 'Uff, now import *The_Schneider_Family* again.\nWatch: the group information will stay intact, because we exported as an AA database.\n\nFinally, sort the database twice:\n     1st with index *Name2* and\n     2nd by *Name*'
  155.         importselection '"The Schneider Family"'
  156.         selectnone
  157.  
  158.         sort name2
  159.         sort name
  160.  
  161.         dialogbox 'C="Wow"' 'Ok, now lets remove all identical records using 1 single function call.'
  162.         removeduplicaterecords
  163.  
  164.         dialogbox 'ControlString="Yes please!|I am sorry!"' 'You survived part 2 of this demo!\n\nBut, this is still not all.Would you like to continue ?'
  165.         if result = 1 then do
  166.             dialogbox 'C="OK"' 'Now we are taking a look at the record data of *Alex Schneider*.\nFirst, find his record and set it as the current one.'
  167.             find 'Alex'
  168.             dialogbox 'C="Interesting"' 'There are two ways to read record data in ARexx:\n   . use GETRECORDDATA to read a record field s data\n   . use FORMATRECORDSTRING for C-like (sprintf) formatting of record data.'
  169.  
  170.             getrecorddata name
  171.             strName = result
  172.             getrecorddata name2
  173.             strName2 = result
  174.             getrecorddata address1
  175.             strAddr1 = result
  176.             getrecorddata place
  177.             strPlace = result
  178.  
  179.             say 'Current record data (by repeated use of GETRECORDDATA):'
  180.             say 'Name....: 'strName
  181.             say 'Name2...: 'strName2
  182.             say 'Address.: 'strAddr1
  183.             say 'Place...: 'strPlace
  184.  
  185.             formatrecordstring '%f2 %f1\nliving at %f3 in %f5.\ne-mail is %f8'
  186.  
  187.             dialogbox 'C="Wow!!!"' 'Current record data (by use of formatrecordstring)\n\n'result
  188.  
  189. /*            dialogbox 'C="Yes, of course|No thanks. That is enough!"' 'Finally, would you like to print the database ???'
  190.             if result = 1 then do
  191.                 print Dialog 'P="Prefs/Default.ppref"' 'testDatabase.out'
  192.             end*/
  193.         end
  194.     end
  195.  
  196.     dialogbox 'ControlString="Yes, please!|Noooo!"' 'Ok, this is all for now!\n\nHope you enjoyed this demo and got an overview over some of AA s features.\n\nThe last question: would you like to save this database to disk!??'
  197.  
  198.     if result = 1 then
  199.         savedatabase    /** database is saved with default name: 'testDatabase' from newdatabase */
  200.  
  201. end
  202.